Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Salzburg Challenger Wimbledon - London Nordea Open - Bastad Hamburg European Open - Hamburg Seville Challenger Davis Cup, Group A, Bologna U.S. Open - New York Mallorca Challenger Oeiras 4 Challenger Orleans Challenger Alicante Challenger Malaga Challenger Lima 2 Challenger Stockholm Open - Stockholm Guayaquil Challenger Valencia Challenger Montevideo Challenger Naples Challenger Australian Open - Melbourne Oeiras 3 Challenger BNP Paribas Open - Indian Wells Miami Open - Miami Qatar ExxonMobil Open - Doha Manama Challenger Quimper Challenger Davis Cup, World Group, Q, SWE-BRA 1-3 Wimbledon - London Dubai Duty Free Tennis Championships - Dubai Phoenix Challenger Ostrava Challenger Mauthausen Challenger French Open - Paris Citi Open - Washington Cary Challenger Sassuolo Challenger Nordea Open - Bastad U.S. Open - New York Istanbul Challenger Orleans Challenger BNP Paribas Nordic Open - Stockholm Zug Challenger Francavilla Challenger Mouilleron-Le-Captif Challenger Seoul Challenger Roanne Challenger Matsuyama Challenger Kobe Challenger Pune Challenger Yokkaichi Challenger Chennai Challenger Yokohama Challenger St. Tropez Challenger Zadar Challenger Grodzisk Mazowiecki Challenger New Delhi Challenger Oeiras 5 Challenger Seoul Challenger Sassuolo Challenger Porto Challenger Mallorca Championships - Mallorca Naples Challenger Rome Challenger Tiriac Open - Bucharest Monza Challenger Hamburg Open - Hamburg Perugia Challenger Heilbronn Challenger Braunschweig Challenger Nordea Open - Bastad U.S. Open - New York Seville Challenger Porto 2 Challenger Taipei Challenger Szczecin Challenger Bad Waltersdorf Challenger Braga Challenger Lisbon Challenger BNP Paribas Nordic Open - Stockholm Kobe Challenger Brazil F11 Brazil F4 Venezuela F3 Brazil F6 Brazil F7 Brazil F8 Brazil F9 Brazil F10 Colombia F3 Colombia F4 Brazil F1 Brazil F2 Brazil F3 Brazil F4 Brazil F5 Brazil F6 Brazil F7 Brazil F8 Brazil F9 Brazil F12 Brazil F14 Brazil F15 Brazil F16 Brazil F17 Brazil F18 Brazil F20 Brazil F21 Brazil F22 Portugal F1 Portugal F2 Croatia F3 Croatia F5 Brazil F3 Brazil F4 Brazil F5 Argentina F7 Argentina F8 Argentina F9 Brazil F13 Brazil F14 Brazil F20 Brazil F24 Brazil F25 Colombia F1 Colombia F2 Brazil F29 Portugal F1 Portugal F2 Portugal F3 Egypt F1 Egypt F2 Egypt F3 Egypt F4 Canada F6 Sweden F4 Sweden F6 Sweden F7 Israel F1 Israel F2 Israel F3 Great Britain F5 Great Britain F6 Great Britain F7 Egypt F12 Egypt F13 Egypt F14 Sweden F2 Romania F3 Netherlands F1 Netherlands F2 Netherlands F3 Brazil F4 (Sao Carlos) Germany F8 (Kassel) Italy F21 (Bolzano) Italy F22 (Cornaiano) Brazil F5 (Mogi das Cruzes) Brazil F6 (Curitiba) Brazil F7 (Sao Carlos) Brazil F8 (Sao Paulo) Brazil F9 (Ribeirao Preto) M25 Weston Copa Petrobras - Aracaju Nossa Caixa Tennis Cup - Sao Paulo Cyclus Open de Tenis - Florianopolis Aberto de Santa Catarina - Florianopolis Credicard Mastercard Tennis Cup - Campos do Jordao BH Tennis Open International Cup - Belo Horizonte Joinville Tennis Festival - Joinville Amazonia Open de Tenis - Belem II Cyclus Open de Tenis - Florianopolis Aberto de Santa Catarina de Tenis - Florianopolis Seguros Bolivar Open - Bogota Challenger ATP de Cuenca Diario El Mercurio - Cuenca BH Tennis Open - Belo Horizonte Credicard Citi Mastercard Tennis Cup 2007 - Campos do Jordao IV Manta Open - Manta Seguros Bolivar Open - Medellin XIII Trofeo Ciudad de Quito - Quito Copa Petrobras Colombia - Bogota Copa Petrobras Brazil - Belo Horizonte Copa Petrobras Paraguay - Asuncion Lima Challenger 2007 - Lima Aberto de Sao Paulo - Sao Paulo Challenger de Providencia-Copa Kia - Santiago Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas San Luis Potosi Challenger - San Luis Potosi AGT Challenger - Leon III Aberto Santa Catarina de Tenis - Florianopolis Rijeka Open - Rijeka Zagreb Open - Zagreb Trofeo Cassa di Risparmio di Alessandria - Alessandria Memorial A. Manfredini Sassuolo Challenger - Sassuolo Zenith Tennis Cup-Harbour Club - Milan Seguros Bolivar Open - Bogota V Manta Open-Trofeo Ricardo Delgado Aray - Manta BH Tenis Open International Cup 2008 - Belo Horizonte Credicard Citi Mastercard Tennis Cup - Campos do Jordao Copa Petrobras-Colombia - Bogota Copa Petrobras-Brazil - Aracaju Cyclus Open de Tenis - Florianopolis Copa Petrobras-Uruguay - Montevideo Bancolombia Open - Cali IV Challenger Ciudad De Guayaquil - Guayaquil Seguros Bolivar Open - Medellin Sao Paulo Challenger Salinas Challenger Iquique Challenger Bucaramanga Challenger Santiago Challenger Bogota Challenger San Luis Potosi Challenger Mexico City Challenger Talahassee Challenger Pereira Challenger Blumenau Challenger Karlsruhe Challenger Furth Challenger Kosice Challenger Constanta Challenger Braunschweig Challenger Oberstaufen Challenger Belo Horizonte Challenger Campos do Jordao Challenger Brasilia Challenger Cali Challenger Buenos Aires Challenger Montevideo Challenger Asuncion Challenger Santiago Challenger Medellin Challenger Guayaquil Challenger Sao Paulo Challenger Lima Challenger Sao Paulo Challenger Salinas Challenger Bucaramanga Challenger Bogota Challenger Pereira Challenger Curitiba Challenger Alessandria Challenger Rome Challenger Lugano Challenger Bogota Challenger Lexington Challenger Campos do Jordao Challenger Brasilia Challenger Salvador Challenger Belo Horizonte Challenger Bogota Challenger Cali Challenger Quito Challenger Santiago Challenger Sao Paulo Challenger Medellin Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Salinas Challenger Santiago Challenger Pereira Challenger Blumenau Challenger Santos Challenger Zagreb Challenger Alessandria Challenger Prostejov Challenger Guadalajara Challenger Bogota Challenger Szczecin Challenger Sao Jose Do Rio Preto Challenger Medellin Challenger Buenos Aires Challenger Guayaquil Challenger Montevideo Challenger Barranquilla Challenger Santos Challenger Prostejov Challenger Braunschweig Challenger Manta Challenger Cali Challenger Campinas Challenger Quito Challenger Rio De Janeiro Challenger Porto Alegre Challenger Medellin Challenger Eckental Challenger Sao Leopoldo Challenger Sao Paulo Challenger Bucaramanga Challenger Salinas Challenger Pereira Challenger Santiago Challenger Itajai Challenger Santos Challenger Sao Paulo Challenger Bordeaux Challenger Sao Paulo Challenger Rio De Janeiro Challenger Cali Challenger Quito Challenger Porto Alegre Challenger Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Bogota Challenger Bratislava Challenger Helsinki Challenger Andria Challenger Sao Paulo Challenger Bucaramanga Challenger Itajai Challenger Sao Paulo Challenger Santos Challenger Tunis Challenger Aix En Provence Challenger Bordeaux Challenger Prostejov Challenger Arad Challenger Caltanissetta Challenger Marburg Challenger Braunschweig Challenger Scheveningen Challenger Poznan Challenger Tampere Challenger Liberec Challenger Cordenons Challenger Bangkok Challenger Medellin Challenger Shanghai Challenger Quito Challenger Napa Challenger Pereira Challenger Sacramento Challenger Cali Challenger Tiburon Challenger San Juan Challenger Cordoba Challenger Eckental Challenger Guayaquil Challenger Helsinki Challenger Sao Paulo Challenger Tour Finals Bucaramanga Challenger Drummondville Challenger Turin Challenger Rome Challenger Prostejov Challenger Furth Challenger Caltanissetta Challenger Prague Challenger Ilkley Challenger Braunschweig Challenger Poznan Challenger Aptos Challenger Vancouver Challenger Barranquilla Challenger Istanbul Challenger Izmir Challenger Campinas Challenger Pereira Challenger Mons Challenger Medellin Challenger Rennes Challenger Santiago Challenger Lima Challenger Bogota Challenger Bratislava Challenger Brescia Challenger Buenos Aires Challenger Rio De Janeiro Challenger Santo Domingo Challenger Bergamo Challenger Puebla Challenger Jonkoping Challenger Guadalajara Challenger Leon Challenger Le Gosier Challenger Barletta Challenger Sao Paulo Challenger Aix En Provence Challenger Bordeaux Challenger Vicenza Challenger Prostejov Challenger Caltanissetta Challenger Lyon Challenger Perugia Challenger Bastad Challenger Cali Challenger Tampere Challenger Biella Challenger Cortina Challenger Fano Challenger Cordenons Challenger Manerbio Challenger Curitiba Challenger Como Challenger Genova Challenger Santos Challenger Rome Challenger Medellin Challenger Campinas Challenger Mohammedia Challenger Santiago Challenger Guayaquil Challenger Bogota Challenger Happy Valley Challenger Dallas Challenger Santiago Challenger Buenos Aires Challenger Leon Challenger San Francisco Challenger Panama City Challenger Barletta Challenger San Luis Potosi Challenger Aix En Provence Challenger Bordeaux Challenger Vicenza Challenger Prostejov Challenger Lyon Challenger Poprad Tatry Challenger Blois Challenger Bastad Challenger Medellin Challenger Scheveningen Challenger Tampere Challenger Biella Challenger Floridablanca Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Bogota Challenger Tiburon Challenger Stockton Challenger Campinas Challenger Buenos Aires Challenger Cali Challenger Guayaquil Challenger Mouilleron-Le-Captif Challenger Montevideo Challenger Santiago Challenger Bangalore Challenger Rio De Janeiro Challenger Rennes Challenger Budapest Challenger Santiago Challenger Irving Challenger San Luis Potosi Challenger St. Brieuc Challenger Mexico City Challenger Guadalajara Challenger Tunis Challenger Aix En Provence Challenger Prostejov Challenger Caltanissetta Challenger L'Aquila Challenger Milan Challenger Braunschweig Challenger Bastad Challenger Tampere Challenger Chicago Challenger Genova Challenger Szczecin Challenger Cary Challenger Orleans Challenger Tiburon Challenger Campinas Challenger Santo Domingo Challenger Brest Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Pune Challenger Orlando Challenger Columbus Challenger Rennes Challenger Punta Del Este Challenger Dallas Challenger Morelos Challenger Santiago Challenger Phoenix Challenger Alicante Challenger San Luis Potosi Challenger Aix En Provence Challenger Heilbronn Challenger Poznan Challenger Lyon Challenger Ludwigshafen Challenger Braunschweig Challenger Tampere Challenger Hamburg Challenger Bratislava Challenger Helsinki Challenger Canberra Challenger Nur-Sultan Challenger Prague Challenger Prague II Challenger Aix En Provence Challenger Split Challenger Istanbul Challenger Cary Challenger Orlando Challenger Biella 4 Challenger Marbella Challenger Split 1 Challenger Split 2 Challenger Rome 1 Challenger Ostrava Challenger Prague Challenger Lyon Challenger Aix En Provence Challenger Braunschweig Challenger St. Tropez Challenger Cassis Challenger Rennes Challenger Orleans Challenger Mouilleron-Le-Captif Challenger Tenerife Challenger Marbella Challenger Bordeaux Challenger Prostejov Challenger Perugia Challenger Montechiarugolo - Parma Challenger Salzburg Challenger Vancouver Challenger Toulouse Challenger Tulln Challenger Helsinki Challenger Andria Challenger Maia Challenger Ottignies-Louvain-la-Neuve Challenger Vilnius Challenger Phoenix Challenger Split Challenger Bordeaux Challenger Prostejov Challenger Brasil Open - Costa do Sauipe Brasil Open - Costa do Sauipe Brasil Open - Costa do Sauipe Brasil Open - Costa do Sauipe Copa Telmex - Buenos Aires Movistar Open - Santiago Brasil Open - Costa do Sauipe Copa Telmex - Buenos Aires Estoril Open - Estoril Movistar Open - Santiago Brasil Open - Costa do Sauipe Copa Claro - Buenos Aires Bet-At-Home Austrian Open - Kitzbuhel Allianz Suisse Open - Gstaad BCR Open Romania - Bucharest PTT Thailand Open - Bangkok China Open - Beijing Apia International - Sydney VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Abierto Mexicano Telcel - Acapulco US Men's Clay Court Championship - Houston BRD Nastase Tiriac Trophy - Bucharest Serbia Open - Belgrade Open de Nice Cote d'Azur - Nice SkiStar Swedish Open - Bastad Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel If Stockholm Open - Stockholm VTR Open - Vina del Mar Brasil Open - Sao Paulo SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad If Stockholm Open - Stockholm Royal Guard Open Chile - Vina del Mar Rio Open 500 - Rio de Janeiro Brasil Open - Sao Paulo Open de Nice Cote d'Azur - Nice SkiStar Swedish Open - Bastad Bet-at-home Cup - Kitzbuhel If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Qatar ExxonMobil Open - Doha Apia International - Sydney Ecuador Open - Quito Brasil Open - Sao Paulo Rio Open - Rio de Janeiro US Men's Clay Court Championship - Houston Barcelona Open BancSabadell - Barcelona BMW Open - Munich Geneva Open - Geneva SkiStar Swedish Open - Bastad Credit Agricole Suisse Open - Gstaad Austrian Open - Kitzbuhel Winston-Salem Open - Winston-Salem Aircel Chennai Open - Chennai Open Sud de France - Montpellier Ecuador Open - Quito Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Suisse Open - Gstaad If Stockholm Open - Stockholm Brisbane International - Brisbane Ecuador Open - Quito Argentina Open - Buenos Aires Memphis Open - Memphis Rio Open - Rio de Janeiro Delray Beach Open - Delray Beach Brasil Open - Sao Paulo Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Suisse Open - Gstaad If Stockholm Open - Stockholm Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Maharashtra Open - Pune Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Gerry Weber Open - Halle SkiStar Swedish Open - Bastad Swiss Open - Gstaad Abierto Mexicano - Los Cabos Intrum Stockholm Open - Stockholm Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Intrum Stockholm Open - Stockholm Murray River Open - Melbourne Nordea Open - Bastad Abierto Mexicano de Tenis Mifel - Los Cabos Truist Atlanta Open - Atlanta Citi Open - Washington Stockholm Open - Stockholm Kremlin Cup - Moscow Astana Open - Nur-Sultan Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Nordea Open - Bastad Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Rakuten Japan Open - Tokyo Stockholm Open - Stockholm Korea Open - Seoul Tata Open Maharashtra - Pune ABN AMRO World Tennis Tournament - Rotterdam Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Banja Luka Open - Banja Luka Sony Ericsson Open - Miami Mutua Madrilena Masters Madrid - Madrid Sony Ericsson Open - Miami Mutua Madrilena Madrid Open - Madrid Western & Southern Financial Group Masters - Cincinnati BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid Sony Open Tennis - Miami Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Miami Open - Miami Rogers Cup - Toronto BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Maia Challenger French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group I, 2R, BRA-COL 3-1 Davis Cup, Group I, PO, SWE-DEN 3-2 Davis Cup, Group I, PO, ROU-SWE 3-1 Davis Cup, World Group, 1R, ARG-BRA 3-2 Davis Cup, Group I, 1R, SWE-AUT 2-3 Davis Cup, World Group, PO, BRA-CRO 1-3 Davis Cup, Group I, PO, SWE-NED 0-5 Davis Cup, Group I, PO, ISR-SWE 3-1 Davis Cup, Group II, 2R, TUR-SWE 1-4 Davis Cup, Group II, 3R, SWE-LTU 5-0 Davis Cup, Group I, 1R, UKR-SWE 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, QR, COL-SWE 4-0 Davis Cup, World Group, QR, SWE-CHI 3-1 Davis Cup, Finals, Group B Davis Cup, Finals, QF, RUS-SWE 2-0 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group A, Bologna Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, World Group I, 1R, SWE-IND 4-0 Australian Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments